iT邦幫忙

2025 iThome 鐵人賽

DAY 17
0
Software Development

30天收斂後端開發心法系列 第 17

30天收斂後端開發心法 - (17) Laravel Tinker

  • 分享至 

  • xImage
  •  

Laravel 提供一個互動式命令列工具 Tinker,可以讓我們直接在命令列中執行 PHP 程式碼,非常適合用來:

  • 測試函式
  • 操作資料庫
  • 派發任務(Jobs)
  • 呼叫服務(Service)

1. 如何打開 Tinker

php artisan tinker
進入後會出現互動式的命令列環境,可以直接執行 PHP 程式碼。

2. 使用 Tinker 派發 Job

假設你有一個任務類別叫做 ProcessInvoiceJob,你可以直接在 Tinker 中這樣執行:
dispatch(new \App\Jobs\ProcessInvoiceJob($yourPayload));
$yourPayload 可以是你要傳入 Job 的資料,如陣列或模型。

3. 使用 Tinker 操作資料庫

新增一筆資料:

App\Models\File::create([
    'title' => 'test',
    'content' => 'demo for tinker',
]);

你必須確認 App\Models\File 有對應的 $fillable 欄位允許 title 與 content。

查詢資料:

App\Models\File::get();

注意事項

Tinker 不會自動同步你的程式碼變更,

如果此時 Tinker 還開著,請先退出再重開,才會載入最新的程式碼。

exit  # 離開 Tinker
php artisan tinker  # 重新開啟

上一篇
30天收斂後端開發心法 - (16) Laravel Helper
下一篇
30天收斂後端開發心法 - (18) Laravel Mock
系列文
30天收斂後端開發心法30
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言